{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Import and setting"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "# ---------- import\n",
    "import pickle\n",
    "\n",
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "import pandas as pd\n",
    "\n",
    "%matplotlib inline"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "# ---------- figure size\n",
    "plt.rcParams['figure.figsize'] =[8, 6]\n",
    "\n",
    "# ---------- axes\n",
    "plt.rcParams['axes.grid'] = True\n",
    "plt.rcParams['axes.linewidth'] = 1.5\n",
    "\n",
    "# ---------- ticks\n",
    "plt.rcParams['xtick.direction'] = 'in'\n",
    "plt.rcParams['ytick.direction'] = 'in'\n",
    "plt.rcParams['xtick.major.width'] = 1.0\n",
    "plt.rcParams['ytick.major.width'] = 1.0\n",
    "plt.rcParams['xtick.major.size'] = 8.0\n",
    "plt.rcParams['ytick.major.size'] = 8.0\n",
    "\n",
    "# ---------- lines\n",
    "plt.rcParams['lines.linewidth'] = 2.5\n",
    "\n",
    "# ---------- grid\n",
    "plt.rcParams['grid.linestyle'] = ':'\n",
    "\n",
    "# ---------- font\n",
    "plt.rcParams['font.size'] = 20\n",
    "#plt.rcParams['pdf.fonttype'] = 42    # embed fonts in PDF using type42 (True type)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "def load_pkl(filename):\n",
    "    with open(filename, 'rb') as f:\n",
    "        return pickle.load(f)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Spg_num</th>\n",
       "      <th>Spg_sym</th>\n",
       "      <th>Spg_num_opt</th>\n",
       "      <th>Spg_sym_opt</th>\n",
       "      <th>E_eV_atom</th>\n",
       "      <th>Magmom</th>\n",
       "      <th>Opt</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>146</td>\n",
       "      <td>R3</td>\n",
       "      <td>148</td>\n",
       "      <td>R-3</td>\n",
       "      <td>-4.217574</td>\n",
       "      <td>NaN</td>\n",
       "      <td>done</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>214</td>\n",
       "      <td>I4_132</td>\n",
       "      <td>229</td>\n",
       "      <td>Im-3m</td>\n",
       "      <td>-4.055381</td>\n",
       "      <td>NaN</td>\n",
       "      <td>done</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>25</td>\n",
       "      <td>Pmm2</td>\n",
       "      <td>59</td>\n",
       "      <td>Pmmn</td>\n",
       "      <td>-3.891756</td>\n",
       "      <td>NaN</td>\n",
       "      <td>done</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>174</td>\n",
       "      <td>P-6</td>\n",
       "      <td>174</td>\n",
       "      <td>P-6</td>\n",
       "      <td>-3.598403</td>\n",
       "      <td>NaN</td>\n",
       "      <td>done</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>99</td>\n",
       "      <td>P4mm</td>\n",
       "      <td>99</td>\n",
       "      <td>P4mm</td>\n",
       "      <td>-1.680160</td>\n",
       "      <td>NaN</td>\n",
       "      <td>done</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   Spg_num Spg_sym  Spg_num_opt Spg_sym_opt  E_eV_atom  Magmom   Opt\n",
       "4      146      R3          148         R-3  -4.217574     NaN  done\n",
       "0      214  I4_132          229       Im-3m  -4.055381     NaN  done\n",
       "1       25    Pmm2           59        Pmmn  -3.891756     NaN  done\n",
       "2      174     P-6          174         P-6  -3.598403     NaN  done\n",
       "3       99    P4mm           99        P4mm  -1.680160     NaN  done"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "rslt_data = load_pkl('./pkl_data/rslt_data.pkl')\n",
    "\n",
    "# ---------- sort by Energy\n",
    "rslt_data.sort_values(by=['E_eV_atom']).head(10)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Number of data: 5\n",
      "Success: 5\n",
      "Error: 0\n",
      "Emin: -4.217573557286639 eV/atom\n"
     ]
    }
   ],
   "source": [
    "# ---------- Number of structures\n",
    "ndata = len(rslt_data)\n",
    "print('Number of data: {}'.format(ndata))\n",
    "\n",
    "# ---------- check success and error\n",
    "nsuccess = rslt_data['E_eV_atom'].count()\n",
    "nerror = ndata - nsuccess\n",
    "print('Success: {}'.format(nsuccess))\n",
    "print('Error: {}'.format(nerror))\n",
    "\n",
    "# ---------- minimum\n",
    "Emin = rslt_data['E_eV_atom'].min()\n",
    "print('Emin: {} eV/atom'.format(Emin))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Energy vs. trial"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Text(0, 0.5, 'Energy (eV/atom)')"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 576x432 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots()\n",
    "\n",
    "# ---------- axis\n",
    "dx = 1\n",
    "ax.set_xlim([0, ndata+dx])\n",
    "ax.set_ylim([-0.5, 3])\n",
    "\n",
    "# ---------- hline at zero\n",
    "ax.hlines(0.0, -dx, ndata+dx, 'k', '--')\n",
    "\n",
    "# ---------- plot\n",
    "# x <-- ID + 1\n",
    "ax.plot(rslt_data.index + 1, rslt_data['E_eV_atom'] - Emin, 'o', ms=15, mew=2.0, alpha=0.8)\n",
    "\n",
    "# ---------- title and label\n",
    "ax.set_title('Random search for Si$_{16}$')\n",
    "ax.set_xlabel('Number of trials')\n",
    "ax.set_ylabel('Energy (eV/atom)')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "# ---------- save figure\n",
    "fig.savefig('Si16_RS.png', bbox_inches='tight')    # PNG\n",
    "#fig.savefig('title_RS.png', bbox_inches='tight', dpi=300)    # high dpi PNG\n",
    "#fig.savefig('title_RS.pdf', bbox_inches='tight')    # PDF"
   ]
  }
 ],
 "metadata": {
  "anaconda-cloud": {},
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.5"
  },
  "toc": {
   "nav_menu": {
    "height": "84px",
    "width": "252px"
   },
   "number_sections": true,
   "sideBar": true,
   "skip_h1_title": false,
   "toc_cell": false,
   "toc_position": {},
   "toc_section_display": "block",
   "toc_window_display": false
  },
  "varInspector": {
   "cols": {
    "lenName": 16,
    "lenType": 16,
    "lenVar": 40
   },
   "kernels_config": {
    "python": {
     "delete_cmd_postfix": "",
     "delete_cmd_prefix": "del ",
     "library": "var_list.py",
     "varRefreshCmd": "print(var_dic_list())"
    },
    "r": {
     "delete_cmd_postfix": ") ",
     "delete_cmd_prefix": "rm(",
     "library": "var_list.r",
     "varRefreshCmd": "cat(var_dic_list()) "
    }
   },
   "types_to_exclude": [
    "module",
    "function",
    "builtin_function_or_method",
    "instance",
    "_Feature"
   ],
   "window_display": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
